package com.kantboot.business.ac.service;

import com.kantboot.business.ac.domain.entity.BusAcRechargeProductOrder;
import com.kantboot.business.ac.domain.vo.BusAcRechargeProductPhoneTypeVO;
import com.kantboot.business.ac.domain.vo.BusAcRechargeProductTypeVO;
import com.kantboot.functional.pay.order.module.entity.FunctionalPayOrder;

import java.util.List;

/**
 * ac项目的充值产品service
 */
public interface IBusAcRechargeProductService {

    /**
     * 获取所有
     */
    List<BusAcRechargeProductTypeVO> getAll();

    /**
     * 获取所有手机充值产品
     */
    List<BusAcRechargeProductPhoneTypeVO> getAllPhone();

    /**
     * 根据产品id和用户id获取金额
     */
    Double getAmountByProductId(Long productId, Long userId);

    /**
     * 根据订单id获取订单
     */
    BusAcRechargeProductOrder getOrderById(Long orderId);

    /**
     * 根据产品id生成订单号
     */
    FunctionalPayOrder generatePayOrder(BusAcRechargeProductOrder order);

}
